﻿<?xml version="1.0" encoding="utf-8" ?>
<Requirements>

  <!-- SQL Server -->
  <RegistryCheck Property="Microsoft SQL Server 2005 Express Edition Registry Key" Key="HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSSQL$SQLEXPRESS" Value="ErrorControl">
    <Compare ValueType="Int32" Method="ValueGreaterThan">0</Compare>
  </RegistryCheck>

  <MsiProductCheck Property="Microsoft SQL Server 2005 Express Edition EN" GUID="2AFFFDD7-ED85-4A90-8C52-5DA9EBDC9B8F">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <MsiProductCheck Property="Microsoft SQL Server 2005 Express Edition Service Pack 2 (DE) 32bit installed" GUID="028ED9C4-25EE-4DEE-9CF4-91034BC89B18">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <MsiProductCheck Property="Microsoft SQL Server 2005 Express Edition Service Pack 2 (EN) 32bit installed" GUID="2AFFFDD7-ED85-4A90-8C52-5DA9EBDC9B8F">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <MsiProductCheck Property="Microsoft SQL Server Management Studio Express Service Pack 2 (DE) installed" GUID="A43D385B-5111-456B-8579-80EFD85E3587">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <MsiProductCheck Property="Microsoft SQL Server Management Studio Express Service Pack 2 (EN) installed" GUID="20608BFA-6068-48FE-A410-400F2A124C27">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <MsiProductCheck Property="Microsoft SQL Server Database Publishing Wizard 1.1 installed" GUID="8C6EE0B4-650F-452E-B9C2-882A72227B19">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>
  <!-- SQL Server -->


  <!-- iis -->
  <MsiProductCheck Property="IIS Diagnostics Toolkit (x86) - EN installed" GUID="30EFFF0C-573D-46FB-8AD5-20051225261A">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <MsiProductCheck Property="Debug Diagnostic Tool v1.1 - EN installed" GUID="3B78B379-C0E7-4FBF-9FD9-04FB6E05E60F">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>
  
  <FileCheck Property="IISFileExists" SpecialFolder="%SystemRoot%" SearchPath="system32\inetsrv" FileName="w3wp.exe">
    <Compare Method="ValueExists" />
  </FileCheck>

  <RegistryCheck Property="IIS Version greater 4" Key="HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC\Parameters" Value="MajorVersion">
    <Compare ValueType="Int32" Method="ValueGreaterThan">4</Compare>
  </RegistryCheck>

  <MsiProductCheck Property="FastCGI Extension for IIS6.0 and IIS5.1 - Go Live installed" GUID="53621BCB-3B4D-4349-9B24-6D9D1B749217">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <MsiProductCheck Property="FastCGI Extension for IIS6.0 installed" GUID="E136BB09-1BB2-49A0-9FF3-5C25564D3819">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <ExternalCheck Property="IIS6 configured with FastCGI for PHP" SpecialFolder="%SystemRoot%" SearchPath="system32\" CheckFile="cscript.exe" Arguments="inetsrv/fcgiconfig.js -get -section:&quot;PHP&quot; -ExePath" >
    <Compare Method="ValueContains">php-cgi</Compare>
  </ExternalCheck>

  <ExternalCheck Property="IIS7 configured with FastCGI for PHP" SpecialFolder="%SystemRoot%" SearchPath="system32\inetsrv" CheckFile="appcmd.exe" Arguments="list config -section:fastcgi" >
    <Compare Method="ValueContains">php-cgi</Compare>
  </ExternalCheck>

  <ExternalCheck Property="IIS7 FastCGI installed" SpecialFolder="%SystemRoot%" SearchPath="system32\inetsrv" CheckFile="appcmd.exe" Arguments="list module iisfcgi" >
    <Compare Method="ValueContains">iisfcgi</Compare>
  </ExternalCheck>
  <!-- iis checkings -->

  
  <!-- other -->
   <ExternalCheck Property="Environment Variable contains Powershell in Path" SpecialFolder="%SystemRoot%" SearchPath="system32\" CheckFile="cmd.exe" Arguments="/C set path" >
    <Compare Method="ValueContains">PowerShell</Compare>
  </ExternalCheck>

  <RegistryCheck Property="Windows PowerShell 1.0 Multilingual User Interface Package" Key="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\KB926141" Value="DisplayName">
    <Compare ValueType="String" Method="ValueEqualTo">Hotfix for Windows Server 2003 (KB926141)</Compare>
  </RegistryCheck>

  <FileCheck Property="Powershell.exe V1 file exists"  SpecialFolder="%SystemRoot%" SearchPath="system32\windowspowershell\v1.0" FileName="powershell.exe">
    <Compare Method="ValueExists" />
  </FileCheck>

  <MsiProductCheck Property="ASP.NET AJAX 1.0 installed" GUID="082BDF7B-4810-4599-BF0D-E3AC44EC8524">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <MsiProductCheck Property="Windows SharePoint Services 3.0 DE installed" GUID="90120000-1014-0000-0000-0000000FF1CE">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <MsiProductCheck Property="Ati" GUID="DFB9EA97-A693-4E22-B2E9-9E3A71E12C7C">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <FileCheck Property="ASP.NET version 2.0" SpecialFolder="c:\" SearchPath="Windows\Microsoft.NET\Framework\v2.0.50727" FileName="aspnet_isapi.dll">
    <Compare Method="ValueExists" />
  </FileCheck>

  <FileCheck Property=".NET version 3.0 setup file" SpecialFolder="c:\" SearchPath="Windows\Microsoft.NET\Framework\v3.0\Microsoft .NET Framework 3.0" FileName="setup.exe">
    <Compare Method="ValueExists" />
  </FileCheck>

  <MsiProductCheck Property="Windows Workflow Foundation installed" GUID="7D1B85BD-AA07-48B8-808D-67A4067FC6BD">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <MsiProductCheck Property="Windows Communication Foundation installed" GUID="491DD792-AD81-429C-9EB4-86DD3D22E333">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <MsiProductCheck Property="Microsoft .NET Framework 2.0 Language Pack - DEU" GUID="8937FCB2-2FC6-4FC3-9FB5-DE2C92DB9C38">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <MsiProductCheck Property="Microsoft Visual Web Developer 2005 Express Edition installed" GUID="173275E9-C62A-4BCB-9389-574E93336DDA">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <RegistryCheck Property="Microsoft Visual Web Developer 2005 Express Edition Service Pack 1 (DE) installed" Key="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Updates\Microsoft Visual Web Developer 2005 Express Edition - DEU\KB926751" Value="Installed">
    <Compare ValueType="Int32" Method="ValueGreaterThan">0</Compare>
  </RegistryCheck>

  <MsiProductCheck Property="Log Parser 2.2 (Tool) - EN installed" GUID="4AC23178-EEBC-4BAF-8CC0-AB15C8897AC9">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <MsiProductCheck Property="MySQL Server 5.0.45 (Community Server) installed" GUID="2FEB25F8-C3CB-49A2-AE79-DE17FFAFB5D9">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <MsiProductCheck Property="MySQL Connector/ODBC 3.51 installed" GUID="9A854ED3-C3B1-493D-8104-C4B5AC459B7A">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <MsiProductCheck Property="MySQL Tools for 5.0 installed" GUID="EC561602-C0B9-4FAA-A175-1B3273639AC3">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <MsiProductCheck Property="ActivePerl 5.8.8 Build 822 installed" GUID="D0E5A0E6-5947-4F21-B8AE-5129D153083B">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <MsiProductCheck Property="PHP 5.2.4 installed" GUID="45473C02-ED58-4FF3-B2F8-7CC0EC9F5AA0">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>

  <MsiProductCheck Property="PHP 5.2.5 installed" GUID="00FA2C30-C2BB-45A2-B0C3-769541E8F6A2">
    <Compare Method="ValueExists"/>
  </MsiProductCheck>
  <!-- other -->
 
  
  
  <!--Test Requirements-->
  <RegistryCheck Property="Registry (ValueExists)" Key="HKEY_LOCAL_MACHINE\SOFTWARE\ACME\" Value="blubb">
    <Compare Method="ValueExists"/>
  </RegistryCheck>

  <RegistryCheck Property="Registry (ValueEqualTo)" Key="HKEY_LOCAL_MACHINE\SOFTWARE\ACME\" Value="blubb">
    <Compare ValueType="String" Method="ValueEqualTo">dfsfsd</Compare>
  </RegistryCheck>

  <RegistryCheck Property="Registry (ValueNotEqualTo)" Key="HKEY_LOCAL_MACHINE\SOFTWARE\ACME\" Value="blubb">
    <Compare ValueType="String" Method="ValueNotEqualTo">blubb</Compare>
  </RegistryCheck>

  <FileCheck Property="does not exist" FileName="powershell.exe">
    <Compare Method="ValueExists" />
  </FileCheck>

  <FileCheck Property="TestFileExists" SearchPath="c:\" FileName="test.log">
    <Compare Method="ValueExists" />
  </FileCheck>
  <!--Test Requirements-->
</Requirements>
